[id].vue 58 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200
  1. <template>
  2. <div>
  3. <HomePageHead></HomePageHead>
  4. <HomePageNavigation></HomePageNavigation>
  5. <HomeSecondaryHeading :titleName="routeName" :titleData="pageData"></HomeSecondaryHeading>
  6. <div class="farmingPartOne">
  7. <div class="inner">
  8. <div class="innerLeft" v-if="pageData.length>0">
  9. <div class="title">
  10. <h3>
  11. <NuxtLink :to="{ path: `/newsList/${pageData[0].cid}`}" v-if="pageData[0]" :title="pageData[0].alias">
  12. {{ pageData[0].alias }}
  13. </NuxtLink>
  14. <span>
  15. <NuxtLink
  16. :to="{ path: `/newsList/${pageData[0].cid}`}"
  17. v-if="pageData[0]" :title="pageData[0].title">查看更多</NuxtLink>
  18. </span>
  19. </h3>
  20. </div>
  21. <div class="leftTop" v-if="pageData[0].data[0]">
  22. <div class="leftTopPhoto left" v-if="pageData[0].data[0]">
  23. <NuxtLink :to="item.linkurl" v-if="pageData[0].data[0]&&pageData[0].data[0].islink==1" :title="pageData[0].data[0].title">
  24. <img :src="pageData[0].data[0].imgurl" :alt="pageData[0].data[0].title">
  25. <span>{{pageData[0].data[0].title }}</span>
  26. </NuxtLink>
  27. <NuxtLink :to="{ path: `/newsDetail/${pageData[0].data[0].id}`, query: { listId: routeId, listName: routeName } }"
  28. v-if="pageData[0].data[0]&&pageData[0].data[0].islink==0" :title="pageData[0].data[0].title">
  29. <img :src="pageData[0].data[0].imgurl" :alt="pageData[0].data[0].title">
  30. <span>{{pageData[0].data[0].title}}</span>
  31. </NuxtLink>
  32. </div>
  33. <ul class="left">
  34. <li v-for="item in pageData[0].data3">
  35. <em></em>
  36. <span>
  37. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
  38. <NuxtLink
  39. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  40. v-if="item.islink==0" :title="item.title">{{ item.title }}
  41. </NuxtLink>
  42. </span>
  43. </li>
  44. </ul>
  45. </div>
  46. <ul class="leftBottom" v-if="pageData[0].data2[0]!=null">
  47. <li v-for="item in pageData[0].data2">
  48. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">
  49. <img :src="item.imgurl" :alt="item.title">
  50. </NuxtLink>
  51. <NuxtLink
  52. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  53. v-if="item.islink==0" :title="item.title">
  54. <img :src="item.imgurl" :alt="item.title">
  55. </NuxtLink>
  56. <p>
  57. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
  58. <NuxtLink
  59. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  60. v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
  61. </p>
  62. </li>
  63. </ul>
  64. </div>
  65. <div class="innerRight" v-if="pageData.length>=2">
  66. <div class="title">
  67. <h3>
  68. <NuxtLink :to="{ path: `/newsList/${pageData[1].cid}`}" v-if="pageData[1]" :title="pageData[1].alias">
  69. {{ pageData[1].alias }}
  70. </NuxtLink>
  71. <span>
  72. <NuxtLink
  73. :to="{ path: `/newsList/${pageData[1].cid}`}"
  74. v-if="pageData[1]" :title="pageData[1].title">查看更多</NuxtLink>
  75. </span>
  76. </h3>
  77. </div>
  78. <ul class="rightList">
  79. <li v-for="item in pageData[1].data">
  80. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
  81. <NuxtLink
  82. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  83. v-if="item.islink==0" :title="item.title">
  84. <img class="left" :src="item.imgurl" :alt="item.title">
  85. </NuxtLink>
  86. <p class="left">
  87. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
  88. <NuxtLink
  89. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  90. v-if="item.islink==0" :title="item.title">
  91. {{ item.title }}
  92. </NuxtLink>
  93. </p>
  94. </li>
  95. </ul>
  96. </div>
  97. </div>
  98. </div>
  99. <HomeTopTen :imgurl="adImg1" v-if="adImg1"></HomeTopTen>
  100. <div class="farmingPartTwo" v-if="pageData.length>=3">
  101. <div class="inner">
  102. <div class="farmer" v-if="pageData.length>=3">
  103. <div class="title">
  104. <h3>
  105. <NuxtLink :to="{ path: `/newsList/${pageData[2].cid}`}" v-if="pageData[2]" :title="pageData[2].alias">
  106. {{ pageData[2].alias }}
  107. </NuxtLink>
  108. <span>
  109. <NuxtLink
  110. :to="{ path: `/newsList/${pageData[2].cid}`}"
  111. v-if="pageData[2]" :title="pageData[2].title">查看更多</NuxtLink>
  112. </span>
  113. </h3>
  114. </div>
  115. <div class="PartTwoPhoto" v-if="pageData[2].data[0]">
  116. <NuxtLink :to="item.linkurl" v-if="pageData[2].data[0].islink==1" :title="pageData[2].data[0].title">
  117. <img :src="pageData[2].data[0].imgurl" :alt="pageData[2].data[0].title">
  118. <span>{{ pageData[2].data[0].title }}</span>
  119. </NuxtLink>
  120. <NuxtLink
  121. :to="{ path: `/newsDetail/${pageData[2].data[0].id}`, query: { listId: routeId, listName: routeName } }"
  122. v-if="pageData[2].data[0].islink==0" :title="pageData[2].data[0].title">
  123. <img :src="pageData[2].data[0].imgurl" :alt="pageData[2].data[0].title">
  124. <span>{{ pageData[2].data[0].title }}</span>
  125. </NuxtLink>
  126. </div>
  127. <ul class="PartTwoList">
  128. <li v-for="item in pageData[2].data2">
  129. <em></em>
  130. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
  131. <NuxtLink
  132. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  133. v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
  134. </li>
  135. </ul>
  136. </div>
  137. <div class="farmer" v-if="pageData.length>=4">
  138. <div class="title">
  139. <h3>
  140. <NuxtLink :to="{ path: `/newsList/${pageData[3].cid}`}" v-if="pageData[3]" :title="pageData[3].alias">
  141. {{ pageData[3].alias }}
  142. </NuxtLink>
  143. <span>
  144. <NuxtLink
  145. :to="{ path: `/newsList/${pageData[3].cid}`}"
  146. v-if="pageData[3]" :title="pageData[3].title">查看更多</NuxtLink>
  147. </span>
  148. </h3>
  149. </div>
  150. <div class="PartTwoPhoto" v-if="pageData[3].data[0]">
  151. <NuxtLink :to="item.linkurl" v-if="pageData[3].data[0].islink==1" :title="pageData[3].data[0].title">
  152. <img :src="pageData[3].data[0].imgurl" :alt="pageData[3].data[0].title">
  153. <span>{{ pageData[3].data[0].title }}</span>
  154. </NuxtLink>
  155. <NuxtLink
  156. :to="{ path: `/newsDetail/${pageData[3].data[0].id}`, query: { listId: routeId, listName: routeName } }"
  157. v-if="pageData[3].data[0].islink==0" :title="pageData[3].data[0].title">
  158. <img :src="pageData[3].data[0].imgurl" :alt="pageData[3].data[0].title">
  159. <span>{{ pageData[3].data[0].title }}</span>
  160. </NuxtLink>
  161. </div>
  162. <ul class="PartTwoList">
  163. <li v-for="item in pageData[3].data2">
  164. <em></em>
  165. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
  166. <NuxtLink
  167. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  168. v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
  169. </li>
  170. </ul>
  171. </div>
  172. <div class="farmer" v-if="pageData.length>=5">
  173. <div class="title">
  174. <h3>
  175. <NuxtLink :to="{ path: `/newsList/${pageData[4].cid}`}" v-if="pageData[4]" :title="pageData[4].alias">
  176. {{ pageData[4].alias }}
  177. </NuxtLink>
  178. <span>
  179. <NuxtLink
  180. :to="{ path: `/newsList/${pageData[4].cid}`}"
  181. v-if="pageData[4]" :title="pageData[4].title">查看更多</NuxtLink>
  182. </span>
  183. </h3>
  184. </div>
  185. <div class="PartTwoPhoto" v-if="pageData[4].data[0]">
  186. <NuxtLink :to="item.linkurl" v-if="pageData[4].data[0].islink==1" :title="pageData[4].data[0].title">
  187. <img :src="pageData[4].data[0].imgurl" :alt="pageData[4].data[0].title">
  188. <span>{{ pageData[4].data[0].title }}</span>
  189. </NuxtLink>
  190. <NuxtLink
  191. :to="{ path: `/newsDetail/${pageData[4].data[0].id}`, query: { listId: routeId, listName: routeName } }"
  192. v-if="pageData[4].data[0].islink==0" :title="pageData[4].data[0].title">
  193. <img :src="pageData[4].data[0].imgurl" :alt="pageData[4].data[0].title">
  194. <span>{{ pageData[4].data[0].title }}</span>
  195. </NuxtLink>
  196. </div>
  197. <ul class="PartTwoList">
  198. <li v-for="item in pageData[4].data2">
  199. <em></em>
  200. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
  201. <NuxtLink
  202. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  203. v-if="item.islink==0" :title="item.title">
  204. {{ item.title }}
  205. </NuxtLink>
  206. </li>
  207. </ul>
  208. </div>
  209. </div>
  210. </div>
  211. <HomeTopTen :imgurl="adImg2" v-if="adImg2"></HomeTopTen>
  212. <div class="zixuntuijian" v-if="pageData.length>=6">
  213. <div class="inner">
  214. <div class="innerLeft" >
  215. <div class="zixunTop">
  216. <div class="zixunLeft" v-if="pageData.length>=6">
  217. <div class="title">
  218. <h3>
  219. <NuxtLink :to="{ path: `/newsList/${pageData[5].cid}`}" v-if="pageData[5]" :title="pageData[5].alias">
  220. {{ pageData[5].alias }}
  221. </NuxtLink>
  222. <span>
  223. <NuxtLink
  224. :to="{ path: `/newsList/${pageData[5].cid}`}"
  225. v-if="pageData[5]" :title="pageData[5].title">查看更多</NuxtLink>
  226. </span>
  227. </h3>
  228. </div>
  229. <ul class="photo_text">
  230. <li v-for="item in pageData[5].data">
  231. <article>
  232. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">
  233. <img :src="item.imgurl" :alt="item.title">
  234. </NuxtLink>
  235. <NuxtLink
  236. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  237. v-if="item.islink==0" :title="item.title">
  238. <img :src="item.imgurl" :alt="item.title">
  239. </NuxtLink>
  240. <div>
  241. <h5>
  242. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
  243. <NuxtLink
  244. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  245. v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
  246. </h5>
  247. <p>
  248. <span>{{ item.author }}</span>
  249. <span>{{ getTime(item.updated_at,'month',1) }}</span>
  250. </p>
  251. </div>
  252. </article>
  253. </li>
  254. <li v-for="item in pageData[5].data2">
  255. <article>
  256. <em></em>
  257. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
  258. <NuxtLink
  259. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  260. v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
  261. </article>
  262. </li>
  263. </ul>
  264. </div>
  265. <div class="zixunRight" v-if="pageData.length>=7">
  266. <div class="title">
  267. <h3>
  268. <NuxtLink :to="{ path: `/newsList/${pageData[6].cid}`}" v-if="pageData[6]" :title="pageData[6].alias">
  269. {{ pageData[6].alias }}
  270. </NuxtLink>
  271. <span>
  272. <NuxtLink
  273. :to="{ path: `/newsList/${pageData[6].cid}`}"
  274. v-if="pageData[6]" :title="pageData[6].title">查看更多</NuxtLink>
  275. </span>
  276. </h3>
  277. </div>
  278. <div class="towPic">
  279. <div v-for="item in pageData[6].data" class="picBox">
  280. <div>
  281. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">
  282. <img :src="item.imgurl" :alt="item.title">
  283. </NuxtLink>
  284. <NuxtLink
  285. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  286. v-if="item.islink==0" :title="item.title">
  287. <img :src="item.imgurl" :alt="item.title">
  288. </NuxtLink>
  289. </div>
  290. </div>
  291. </div>
  292. <ul class="photo_text">
  293. <li v-for="item in pageData[6].data2">
  294. <article>
  295. <em></em>
  296. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
  297. <NuxtLink
  298. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  299. v-if="item.islink==0" :title="item.title">{{ item.title }}
  300. </NuxtLink>
  301. </article>
  302. </li>
  303. </ul>
  304. </div>
  305. </div>
  306. <div class="zixunBottom" v-if="pageData[7]">
  307. <img class="left" :src="pageData[7].data[0].imgurl" :alt="pageData[7].data[0].title"
  308. v-if="pageData[7].data[0] && hoverStatus == 0">
  309. <img class="left" :src="pageData[7].data[1].imgurl" :alt="pageData[7].data[1].title"
  310. v-if="pageData[7].data[1] && hoverStatus == 1">
  311. <img class="left" :src="pageData[7].data[2].imgurl" :alt="pageData[7].data[2].title"
  312. v-if="pageData[7].data[2] && hoverStatus == 2">
  313. <img class="left" :src="pageData[7].data[3].imgurl" :alt="pageData[7].data[3].title"
  314. v-if="pageData[7].data[3] && hoverStatus == 3">
  315. <img class="left" :src="pageData[7].data[4].imgurl" :alt="pageData[7].data[4].title"
  316. v-if="pageData[7].data[4] && hoverStatus == 4">
  317. <img class="left" :src="pageData[7].data[5].imgurl" :alt="pageData[7].data[5].title"
  318. v-if="pageData[7].data[5] && hoverStatus == 5">
  319. <ul class="leftList left">
  320. <li v-for="(item, index) in pageData[7].data" @mouseenter="qhPic(index)">
  321. <h4>
  322. <em></em>
  323. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
  324. <NuxtLink
  325. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  326. v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
  327. </h4>
  328. </li>
  329. </ul>
  330. </div>
  331. </div>
  332. <div class="innerRight" v-if="pageData.length>=9">
  333. <div class="title">
  334. <h3>
  335. <NuxtLink :to="{ path: `/newsList/${pageData[7].cid}`}" v-if="pageData[8]" :title="pageData[7].alias">
  336. {{ pageData[7].alias }}
  337. </NuxtLink>
  338. <span>
  339. <NuxtLink
  340. :to="{ path: `/newsList/${pageData[7].cid}`}"
  341. v-if="pageData[7]" :title="pageData[7].title">查看更多</NuxtLink>
  342. </span>
  343. </h3>
  344. </div>
  345. <ul class="information">
  346. <li v-for="item in pageData[8].data">
  347. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">
  348. <img :src="item.imgurl" :alt="item.title">
  349. </NuxtLink>
  350. <NuxtLink
  351. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  352. v-if="item.islink==0" :title="item.title">
  353. <img :src="item.imgurl" :alt="item.title">
  354. </NuxtLink>
  355. <div class="text">
  356. <h5>
  357. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
  358. <NuxtLink :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }" v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
  359. </h5>
  360. <p>{{ item.author }}</p>
  361. </div>
  362. </li>
  363. </ul>
  364. </div>
  365. </div>
  366. </div>
  367. <HomeTopTen :imgurl="adImg3" v-if="adImg3"></HomeTopTen>
  368. <div class="farming" v-if="pageData.length>=10">
  369. <div class="inner">
  370. <div class="innerLeft">
  371. <div class="farmer" v-if="pageData.length>=10">
  372. <h3>
  373. <NuxtLink :to="{ path: `/newsList/${pageData[9].cid}`}" v-if="pageData[9]" :title="pageData[9].alias">
  374. {{ pageData[9].alias }}
  375. </NuxtLink>
  376. <span>
  377. <NuxtLink
  378. :to="{ path: `/newsList/${pageData[9].cid}`}"
  379. v-if="pageData[9]" :title="pageData[9].title">查看更多</NuxtLink>
  380. </span>
  381. </h3>
  382. <ul>
  383. <li v-for="item in pageData[9].data">
  384. <em></em>
  385. <span>
  386. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
  387. <NuxtLink
  388. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  389. v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
  390. </span>
  391. </li>
  392. </ul>
  393. </div>
  394. <div class="farmer" v-if="pageData.length>=11">
  395. <h3>
  396. <NuxtLink :to="{ path: `/newsList/${pageData[10].cid}`}" v-if="pageData[10]" :title="pageData[10].alias">
  397. {{ pageData[10].alias }}
  398. </NuxtLink>
  399. <span>
  400. <NuxtLink
  401. :to="{ path: `/newsList/${pageData[10].cid}`}"
  402. v-if="pageData[10]" :title="pageData[10].title">查看更多</NuxtLink>
  403. </span>
  404. </h3>
  405. <ul>
  406. <li v-for="item in pageData[10].data">
  407. <em></em>
  408. <span>
  409. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
  410. <NuxtLink
  411. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  412. v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
  413. </span>
  414. </li>
  415. </ul>
  416. </div>
  417. </div>
  418. <div class="innerRight" v-if="pageData.length>=12">
  419. <h3>
  420. <NuxtLink :to="{ path: `/newsList/${pageData[11].cid}`}" v-if="pageData[11]" :title="pageData[11].alias">
  421. {{ pageData[11].alias }}
  422. </NuxtLink>
  423. <span>
  424. <NuxtLink
  425. :to="{ path: `/newsList/${pageData[11].cid}`}"
  426. v-if="pageData[11]" :title="pageData[11].title">查看更多</NuxtLink>
  427. </span>
  428. </h3>
  429. <div class="banner">
  430. <HomeSmallSwiper :swiperData="pageData[11].data"></HomeSmallSwiper>
  431. </div>
  432. <div class="banner_b_img">
  433. <div class="photo">
  434. <article v-for="(item, index) in pageData[11].data2">
  435. <div class="photoL" v-if="index == 0">
  436. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">
  437. <img :src="item.imgurl" :alt="item.title">
  438. <span>{{ item.title }}</span>
  439. </NuxtLink>
  440. <NuxtLink
  441. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  442. v-if="item.islink==0" :title="item.title">
  443. <img :src="item.imgurl" :alt="item.title">
  444. <span>{{ item.title }}</span>
  445. </NuxtLink>
  446. </div>
  447. <div class="photoL" v-if="index == 1">
  448. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">
  449. <img :src="item.imgurl" :alt="item.title">
  450. <span>{{ item.title }}</span>
  451. </NuxtLink>
  452. <NuxtLink
  453. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  454. v-if="item.islink==0" :title="item.title">
  455. <img :src="item.imgurl" :alt="item.title">
  456. <span>{{ item.title }}</span>
  457. </NuxtLink>
  458. </div>
  459. </article>
  460. </div>
  461. </div>
  462. <div class="banner_text_list">
  463. <ul>
  464. <li v-for="item in pageData[11].data3">
  465. <em></em>
  466. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">
  467. <span>{{ item.title }}</span>
  468. </NuxtLink>
  469. <NuxtLink
  470. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  471. v-if="item.islink==0" :title="item.title">
  472. <span>{{ item.title }}</span>
  473. </NuxtLink>
  474. </li>
  475. </ul>
  476. </div>
  477. </div>
  478. </div>
  479. </div>
  480. <!-- 十强称号logo -->
  481. <HomeTopTen :imgurl="adImg4" v-if="adImg4"></HomeTopTen>
  482. <!-- 第五层 -->
  483. <div class="scienceEducation" v-if="pageData.length>=13">
  484. <div class="inner">
  485. <div class="innerLeft" v-if="pageData.length>=13">
  486. <div class="slider">
  487. <div class="scienceTitle">
  488. <h5>
  489. <NuxtLink :to="{ path: `/newsList/${pageData[12].cid}`}" v-if="pageData[12]" :title="pageData[12].title">
  490. {{ pageData[12].title }}
  491. </NuxtLink>
  492. </h5>
  493. <p class="title">
  494. <span v-if="pageData[12]" @click="qhtabs(1)">
  495. <b v-if="showTabs == 1" class="active">{{ pageData[12].title1 }}</b>
  496. <b v-else class="noSelect">{{ pageData[12].title1 }}</b>
  497. </span>
  498. <span v-if="pageData[12]" @click="qhtabs(2)">
  499. <b v-if="showTabs == 2" class="active">{{ pageData[12].title2 }}</b>
  500. <b v-else class="noSelect">{{ pageData[12].title2 }}</b>
  501. </span>
  502. <span v-if="pageData[12]" @click="qhtabs(3)">
  503. <b v-if="showTabs == 3" class="active">{{ pageData[12].title3 }}</b>
  504. <b v-else class="noSelect">{{ pageData[12].title3 }}</b>
  505. </span>
  506. <span v-if="pageData[12]" @click="qhtabs(4)">
  507. <b v-if="showTabs == 4" class="active">{{ pageData[12].title4 }}</b>
  508. <b v-else class="noSelect">{{ pageData[12].title4 }}</b>
  509. </span>
  510. </p>
  511. </div>
  512. <div class="box">
  513. <div class="scienceListBox">
  514. <ul class="scienceList" v-if="showTabs == 1">
  515. <li v-for="item in pageData[12].data1">
  516. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title"><img :src="item.imgurl" :alt="item.title"></NuxtLink>
  517. <NuxtLink
  518. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  519. v-if="item.islink==0" :title="item.title"><img :src="item.imgurl" :alt="item.title"></NuxtLink>
  520. <p>
  521. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
  522. <NuxtLink
  523. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  524. v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
  525. </p>
  526. </li>
  527. </ul>
  528. <ul class="scienceList" v-if="showTabs == 2">
  529. <li v-for="item in pageData[12].data2">
  530. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title"><img :src="item.imgurl" :alt="item.title"></NuxtLink>
  531. <NuxtLink
  532. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  533. v-if="item.islink==0" :title="item.title"><img :src="item.imgurl" :alt="item.title"></NuxtLink>
  534. <p>
  535. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
  536. <NuxtLink
  537. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  538. v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
  539. </p>
  540. </li>
  541. </ul>
  542. <ul class="scienceList" v-if="showTabs == 3">
  543. <li v-for="item in pageData[12].data3">
  544. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title"><img :src="item.imgurl" :alt="item.title"></NuxtLink>
  545. <NuxtLink
  546. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  547. v-if="item.islink==0" :title="item.title"><img :src="item.imgurl" :alt="item.title"></NuxtLink>
  548. <p>
  549. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
  550. <NuxtLink
  551. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  552. v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
  553. </p>
  554. </li>
  555. </ul>
  556. <ul class="scienceList" v-if="showTabs == 4">
  557. <li v-for="item in pageData[12].data4">
  558. <img :src="item.imgurl" :alt="item.title">
  559. <p>
  560. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
  561. <NuxtLink
  562. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  563. v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
  564. </p>
  565. </li>
  566. </ul>
  567. </div>
  568. </div>
  569. </div>
  570. </div>
  571. <div class="innerRight" v-if="pageData.length>=14">
  572. <h3>
  573. <NuxtLink :to="{ path: `/newsList/${pageData[13].cid}`}" v-if="pageData[13]" :title="pageData[13].alias">
  574. {{ pageData[13].alias }}
  575. </NuxtLink>
  576. <span>
  577. <NuxtLink
  578. :to="{ path: `/newsList/${pageData[13].cid}`}"
  579. v-if="pageData[13]" :title="pageData[13].title">查看更多</NuxtLink>
  580. </span>
  581. </h3>
  582. <ul class="sannongList">
  583. <li v-for="item in pageData[13].data3">
  584. <em></em>
  585. <span>
  586. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">{{ item.title }}</NuxtLink>
  587. <NuxtLink
  588. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  589. v-if="item.islink==0" :title="item.title">{{ item.title }}</NuxtLink>
  590. </span>
  591. </li>
  592. </ul>
  593. <div class="banner">
  594. <HomeSmallSwiper :swiperData="pageData[13].data"></HomeSmallSwiper>
  595. </div>
  596. <div class="banner_b_img">
  597. <div class="photo">
  598. <article v-for="(item, index) in pageData[13].data2">
  599. <div class="photoL" v-if="index == 0">
  600. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">
  601. <img :src="item.imgurl" :alt="item.title">
  602. <span>{{ item.title }}</span>
  603. </NuxtLink>
  604. <NuxtLink
  605. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  606. v-if="item.islink==0" :title="item.title">
  607. <img :src="item.imgurl" :alt="item.title">
  608. <span>{{ item.title }}</span>
  609. </NuxtLink>
  610. </div>
  611. <div class="photoL" v-if="index == 1">
  612. <NuxtLink :to="item.linkurl" v-if="item.islink==1" :title="item.title">
  613. <img :src="item.imgurl" :alt="item.title">
  614. <span>{{ item.title }}</span>
  615. </NuxtLink>
  616. <NuxtLink
  617. :to="{ path: `/newsDetail/${item.id}`, query: { listId: routeId, listName: routeName } }"
  618. v-if="item.islink==0" :title="item.title">
  619. <img :src="item.imgurl" :alt="item.title">
  620. <span>{{ item.title }}</span>
  621. </NuxtLink>
  622. </div>
  623. </article>
  624. </div>
  625. </div>
  626. </div>
  627. </div>
  628. </div>
  629. <!-- 页脚部分 -->
  630. <HomeFoot1></HomeFoot1>
  631. </div>
  632. </template>
  633. <script setup>
  634. //0.配置路由别名 start ---------------------------------------->
  635. //带有子导航的,不需要后面的:id,我们需要从路由中获取id
  636. // definePageMeta({
  637. // alias: [
  638. // "/sannongtansuo16/",
  639. // "/wenhuashenghuo15/",
  640. // "/sannongrenwu18/",
  641. // "/xinnongcun11/",
  642. // "/sannongzhuanti149/",
  643. // "/nongchangouxiao153/",
  644. // "/nongzigouxiao21/",
  645. // "/zhifuxinxi23/",
  646. // "/sannongzhichuang2/",
  647. // "/quyujingji5/",
  648. // "/sannongtouzi12/",
  649. // "/nongmaozixun13/",
  650. // "/sannongkejiao14/",
  651. // "/shukanxinxi24/",
  652. // "/zhengcefagui1/",
  653. // "/nongwangdaohang25/",
  654. // "/tieshenbaobei138/",
  655. // "/xiezuodaquan150/",
  656. // "/sannongneican30/",
  657. // "/sannongluntan29/",
  658. // "/sannongdiaocha28/",
  659. // "/sannongfuwu27/",
  660. // "/dajiaweiquan26/",
  661. // "/zhaogongzhaopin20/",
  662. // "/nongyekepu300/",
  663. // "/nongmingong317/"
  664. // ]
  665. // });
  666. //0.配置路由别名 end ---------------------------------------->
  667. //1.加载页面依赖 start ---------------------------------------->
  668. import { ref, onMounted } from 'vue';
  669. //获得跳转过来的id
  670. const route = useRoute();
  671. //动态路由别名
  672. // //获取route中的数字部分
  673. // const extractNumberFromPath = (path) => {
  674. // const match = path.match(/\d+/);
  675. // return match ? match[0] : null;
  676. // };
  677. // const routeId = extractNumberFromPath(route.path);
  678. const routeId = route.params.id; //获得该页面的id
  679. const routeName = route.query.name; //获得该页面的名称
  680. //1.加载页面依赖 end ---------------------------------------->
  681. //2.页面交互效果 start ---------------------------------------->
  682. //2.1 新闻图片切换
  683. const hoverStatus = ref(1)
  684. const qhPic = function (num) {
  685. console.log(num)
  686. hoverStatus.value = num;
  687. }
  688. //2.2 选项卡切换
  689. let showTabs = ref(1)
  690. let qhtabs = function (number) {
  691. console.log(number)
  692. showTabs.value = number
  693. }
  694. //2.3 展示广告
  695. let adImg1 = ref({})
  696. let adImg2 = ref({})
  697. let adImg3 = ref({})
  698. let adImg4 = ref({})
  699. onMounted(async () => {
  700. //从客户端获取行政职能部门 加快打开速度
  701. const { $webUrl, $CwebUrl } = useNuxtApp();
  702. //广告1
  703. let url = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=snzxw_category_0001`
  704. const responseAd1 = await fetch(url, {
  705. headers: {
  706. 'Content-Type': 'application/json',
  707. 'Userurl': $CwebUrl,
  708. 'Origin': $CwebUrl
  709. }
  710. });
  711. const resultAd1 = await responseAd1.json();
  712. adImg1.value = resultAd1.data[0];
  713. //广告2
  714. let url2 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=snzxw_category_0002`
  715. const responseAd2 = await fetch(url2, {
  716. headers: {
  717. 'Content-Type': 'application/json',
  718. 'Userurl': $CwebUrl,
  719. 'Origin': $CwebUrl
  720. }
  721. });
  722. const resultAd2 = await responseAd2.json();
  723. adImg2.value = resultAd2.data[0];
  724. //广告3
  725. let url3 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=snzxw_category_0003`
  726. const responseAd3 = await fetch(url3, {
  727. headers: {
  728. 'Content-Type': 'application/json',
  729. 'Userurl': $CwebUrl,
  730. 'Origin': $CwebUrl
  731. }
  732. });
  733. const resultAd3 = await responseAd3.json();
  734. adImg3.value = resultAd3.data[0];
  735. //广告4
  736. let url4 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=snzxw_category_0004`
  737. const responseAd4 = await fetch(url4, {
  738. headers: {
  739. 'Content-Type': 'application/json',
  740. 'Userurl': $CwebUrl,
  741. 'Origin': $CwebUrl
  742. }
  743. });
  744. const resultAd4 = await responseAd4.json();
  745. adImg4.value = resultAd4.data[0];
  746. })
  747. //2.页面交互效果 end ---------------------------------------->
  748. //3.渲染页面数据 start ---------------------------------------->
  749. //3.1 该页面上所有的导航池 转为动态数据
  750. const pageCategory = ref([]);
  751. //3.2 该页面上需要渲染的所有数据
  752. const pageData = ref([
  753. // { id: 0, data: [], data2: [], title: "", cid: "" },
  754. // { id: 1, data: [], title: "", cid: "" },
  755. // { id: 2, data: [], title: "", cid: "" },
  756. // { id: 3, data: [], title: "", cid: "" },
  757. // { id: 4, data: [], title: "", cid: "" },
  758. // { id: 5, data: [], title: "", cid: "" },
  759. // { id: 6, data: [], title: "", cid: "" },
  760. // { id: 7, data: [], title: "", cid: "" },
  761. // { id: 8, data: [], title: "", cid: "" },
  762. // { id: 9, data: [], title: "", cid: "" },
  763. // { id: 10, data: [], title: "", cid: "" },
  764. // { id: 10, data: [], title: "", cid: "" },
  765. // {
  766. // id: 11,
  767. // title: "",
  768. // data: [],
  769. // data1: [],
  770. // data2: [],
  771. // data3: [],
  772. // data4: [],
  773. // category_id1: "",
  774. // category_id2: "",
  775. // category_id3: "",
  776. // category_id4: "",
  777. // title1: "",
  778. // title2: "",
  779. // title3: "",
  780. // title4: "",
  781. // cid: ""
  782. // },
  783. // { id: 12, data1: [], data2: [], data3: [], cid: "" },
  784. ])
  785. const navSize = ref("");
  786. //3.3 获取所有导航
  787. try {
  788. const navigateData = await requestDataPromise('/web/getWebsiteModelCategory', {
  789. method: 'GET',
  790. query: {
  791. 'placeid': 1,
  792. 'pid': routeId,
  793. 'num': 14
  794. },
  795. });
  796. if(navigateData.code == 200){
  797. // 遍历可用的导航池放到页面中
  798. for (let index in navigateData.data) {
  799. let data = {
  800. title: navigateData.data[index].name,
  801. cid: navigateData.data[index].category_id,
  802. children_count: navigateData.data[index].children_count,
  803. alias: navigateData.data[index].alias,
  804. data:[],
  805. data1:[],
  806. data2:[],
  807. data3:[],
  808. data4:[],
  809. category_id1:"",
  810. category_id2:"",
  811. category_id3:"",
  812. category_id4:"",
  813. title1: "",
  814. title2: "",
  815. title3: "",
  816. title4: ""
  817. };
  818. if (navigateData.data[index].is_url == 1) {
  819. // 处理 URL 的逻辑
  820. } else {
  821. //每个页面最多8个模块
  822. pageData.value.push(data);
  823. }
  824. }
  825. //导航池加载完毕,开始申请模块数据
  826. await getPageData1();
  827. await getPageData2();
  828. await getPageData3();
  829. await getPageData4();
  830. await getPageData5();
  831. await getPageData6();
  832. await getPageData7();
  833. await getPageData8();
  834. // await getPageData9();
  835. // await getPageData10();
  836. // await getPageData11();
  837. // await getPageData12();
  838. // await getPageData12_data2();
  839. // await getPageData12_data3();
  840. // await getPageData13();
  841. // if(navSize.value>=1){
  842. // await getPageData13_data1();
  843. // }
  844. // if(navSize.value>=2){
  845. // await getPageData13_data2();
  846. // }
  847. // if(navSize.value>=3){
  848. // await getPageData13_data3();
  849. // }
  850. // if(navSize.value>=4){
  851. // await getPageData13_data4();
  852. // }
  853. // await getPageData14();
  854. // await getPageData14_data2();
  855. // await getPageData14_data3();
  856. }else{
  857. console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
  858. console.log("错误位置:分类页导航池")
  859. console.log("后端错误反馈:",navigateData.message)
  860. console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
  861. }
  862. } catch (error) {
  863. console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
  864. console.log("错误位置:分类页导航渲染阶段")
  865. console.log("错误:导航池渲染执行接口出错!请检查首页的14的模块的具体执行方法!")
  866. console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
  867. }
  868. //获得模块数据
  869. async function getPageData(catid,img_num,text_num,modulesNum,childNavNum,childImgNum,childTextNum){
  870. const mkdata = await requestDataPromise('/web/getWebsiteCatidArticle', {
  871. method: 'GET',
  872. query: {
  873. 'catid': catid, //catid
  874. 'img_num': img_num, //图片数量
  875. 'text_num': text_num, //文字数量
  876. 'child_catnum':childNavNum,//子级栏目菜单数量
  877. 'child_imgnum':childImgNum,//子栏目展示图片新闻数量
  878. 'child_textnum':childTextNum//子栏目展示文字新闻数量
  879. },
  880. });
  881. if(modulesNum == 1){
  882. pageData.value[0].data.push(mkdata.data.img[0]);
  883. pageData.value[0].data2.push(mkdata.data.img[1]);
  884. pageData.value[0].data2.push(mkdata.data.img[2]);
  885. pageData.value[0].data2.push(mkdata.data.img[3]);
  886. pageData.value[0].data2.push(mkdata.data.img[1]);
  887. pageData.value[0].data3 = mkdata.data.text;
  888. }
  889. if(modulesNum == 2){
  890. pageData.value[1].data = mkdata.data.img;
  891. }
  892. if(modulesNum == 3){
  893. pageData.value[2].data = mkdata.data.img;
  894. pageData.value[2].data2 = mkdata.data.text;
  895. }
  896. if(modulesNum == 4){
  897. pageData.value[3].data = mkdata.data.img;
  898. pageData.value[3].data2 = mkdata.data.text;
  899. }
  900. if(modulesNum == 5){
  901. pageData.value[4].data = mkdata.data.img;
  902. pageData.value[4].data2 = mkdata.data.text;
  903. }
  904. if(modulesNum == 6){
  905. pageData.value[5].data.push(mkdata.data.img[0]);
  906. pageData.value[5].data2 = mkdata.data.text;
  907. pageData.value[7].data.push(mkdata.data.img[1]);
  908. pageData.value[7].data.push(mkdata.data.img[2]);
  909. pageData.value[7].data.push(mkdata.data.img[3]);
  910. pageData.value[7].data.push(mkdata.data.img[4]);
  911. pageData.value[7].data.push(mkdata.data.img[5]);
  912. }
  913. if(modulesNum == 7){
  914. pageData.value[6].data = mkdata.data.img;
  915. pageData.value[6].data2 = mkdata.data.text;
  916. }
  917. //模块8 向后移动一个位置
  918. if(modulesNum == 8){
  919. pageData.value[8].data = mkdata.data.img;
  920. }
  921. }
  922. //新农村
  923. //模块1 理论前沿
  924. async function getPageData1() {
  925. await getPageData(pageData.value[0].cid,5,8,1,0,0,0);
  926. }
  927. //模块2 典型经验
  928. async function getPageData2() {
  929. await getPageData(pageData.value[1].cid,5,0,2,0,0,0);
  930. }
  931. //模块3 农业天地
  932. async function getPageData3() {
  933. await getPageData(pageData.value[2].cid,1,6,3,0,0,0);
  934. }
  935. //模块4 美丽乡村
  936. async function getPageData4() {
  937. await getPageData(pageData.value[3].cid,1,6,4,0,0,0);
  938. }
  939. //模块5 农民之家
  940. async function getPageData5() {
  941. await getPageData(pageData.value[4].cid,1,6,5,0,0,0);
  942. }
  943. //模块6 农业天地
  944. async function getPageData6() {
  945. await getPageData(pageData.value[5].cid,6,3,6,0,0,0);
  946. }
  947. //模块7 农村建设
  948. async function getPageData7() {
  949. await getPageData(pageData.value[6].cid,2,3,7,0,0,0);
  950. }
  951. //模块8 高端资讯
  952. async function getPageData8() {
  953. await getPageData(pageData.value[7].cid,4,0,8,0,0,0);
  954. }
  955. //模块9 实践探索
  956. // async function getPageData9() {
  957. // await getPageData(pageData.value[8].cid,4,0,9,0,0,0);
  958. // }
  959. //模块10
  960. // async function getPageData10() {
  961. // const mkdata = await requestDataPromise('/web/getWebsiteModelArticles', {
  962. // method: 'GET',
  963. // query: {
  964. // 'catid': pageData.value[9].cid,
  965. // 'level': 1,
  966. // 'pagesize': 10
  967. // },
  968. // });
  969. // pageData.value[9].data = mkdata.data;
  970. // }
  971. // //模块11
  972. // async function getPageData11() {
  973. // const mkdata = await requestDataPromise('/web/getWebsiteModelArticles', {
  974. // method: 'GET',
  975. // query: {
  976. // 'catid': pageData.value[10].cid,
  977. // 'level': 1,
  978. // 'pagesize': 10
  979. // },
  980. // });
  981. // pageData.value[10].data = mkdata.data;
  982. // }
  983. // //模块12
  984. // async function getPageData12() {
  985. // const mkdata = await requestDataPromise('/web/getWebsiteModelArticles', {
  986. // method: 'GET',
  987. // query: {
  988. // 'catid': pageData.value[11].cid,
  989. // 'level': 2,
  990. // 'pagesize': 4
  991. // },
  992. // });
  993. // pageData.value[11].data = mkdata.data;
  994. // }
  995. // async function getPageData12_data2() {
  996. // const mkdata = await requestDataPromise('/web/getWebsiteModelArticles', {
  997. // method: 'GET',
  998. // query: {
  999. // 'catid': pageData.value[11].cid,
  1000. // 'level': 3,
  1001. // 'pagesize': 2
  1002. // },
  1003. // });
  1004. // pageData.value[11].data2 = mkdata.data;
  1005. // }
  1006. // async function getPageData12_data3() {
  1007. // const mkdata = await requestDataPromise('/web/getWebsiteModelArticles', {
  1008. // method: 'GET',
  1009. // query: {
  1010. // 'catid': pageData.value[11].cid,
  1011. // 'level': 1,
  1012. // 'pagesize': 5
  1013. // },
  1014. // });
  1015. // pageData.value[11].data3 = mkdata.data;
  1016. // }
  1017. // async function getPageData13() {
  1018. // const navData = await requestDataPromise('/web/getWebsiteModelCategory', {
  1019. // method: 'GET',
  1020. // query: {
  1021. // 'pid': pageData.value[12].cid,
  1022. // 'placeid': 1,
  1023. // 'num': 4
  1024. // },
  1025. // });
  1026. // let mkLength = navData.data.length;
  1027. // navSize.value = navData.data.length;
  1028. // if(mkLength != 0){
  1029. // for (let i = 1; i <= mkLength; i++) {
  1030. // if (i == 1) {
  1031. // pageData.value[12].title1 = navData.data[0].name;
  1032. // pageData.value[12].category_id1 = navData.data[0].category_id;
  1033. // }
  1034. // if (i == 2) {
  1035. // pageData.value[12].title2 = navData.data[1].name;
  1036. // pageData.value[12].category_id2 = navData.data[1].category_id;
  1037. // }
  1038. // if (i == 3) {
  1039. // pageData.value[12].title3 = navData.data[2].name;
  1040. // pageData.value[12].category_id3 = navData.data[2].category_id;
  1041. // }
  1042. // if (i == 4) {
  1043. // pageData.value[12].title4 = navData.data[3].name;
  1044. // pageData.value[12].category_id4 = navData.data[3].category_id;
  1045. // }
  1046. // }
  1047. // }
  1048. // }
  1049. // async function getPageData13_data1() {
  1050. // const mkdata = await requestDataPromise('/web/getWebsiteModelArticles', {
  1051. // method: 'GET',
  1052. // query: {
  1053. // 'catid': pageData.value[12].category_id1,
  1054. // 'level': 3,
  1055. // 'pagesize': 6
  1056. // },
  1057. // });
  1058. // pageData.value[12].data1 = mkdata.data;
  1059. // }
  1060. // async function getPageData13_data2() {
  1061. // const mkdata = await requestDataPromise('/web/getWebsiteModelArticles', {
  1062. // method: 'GET',
  1063. // query: {
  1064. // 'catid': pageData.value[12].category_id2,
  1065. // 'level': 3,
  1066. // 'pagesize': 6
  1067. // },
  1068. // });
  1069. // pageData.value[12].data2 = mkdata.data;
  1070. // }
  1071. // async function getPageData13_data3() {
  1072. // const mkdata = await requestDataPromise('/web/getWebsiteModelArticles', {
  1073. // method: 'GET',
  1074. // query: {
  1075. // 'catid': pageData.value[12].category_id3,
  1076. // 'level': 3,
  1077. // 'pagesize': 6
  1078. // },
  1079. // });
  1080. // pageData.value[12].data3 = mkdata.data;
  1081. // }
  1082. // async function getPageData13_data4() {
  1083. // const mkdata = await requestDataPromise('/web/getWebsiteModelArticles', {
  1084. // method: 'GET',
  1085. // query: {
  1086. // 'catid': pageData.value[12].category_id4,
  1087. // 'level': 3,
  1088. // 'pagesize': 6
  1089. // },
  1090. // });
  1091. // pageData.value[12].data4 = mkdata.data;
  1092. // }
  1093. // //模块14
  1094. // async function getPageData14() {
  1095. // const mkdata = await requestDataPromise('/web/getWebsiteModelArticles', {
  1096. // method: 'GET',
  1097. // query: {
  1098. // 'catid': pageData.value[13].cid,
  1099. // 'level': 2,
  1100. // 'pagesize': 4
  1101. // },
  1102. // });
  1103. // pageData.value[13].data = mkdata.data;
  1104. // }
  1105. // async function getPageData14_data2() {
  1106. // const mkdata = await requestDataPromise('/web/getWebsiteModelArticles', {
  1107. // method: 'GET',
  1108. // query: {
  1109. // 'catid': pageData.value[13].cid,
  1110. // 'level': 3,
  1111. // 'pagesize': 2
  1112. // },
  1113. // });
  1114. // pageData.value[13].data2 = mkdata.data;
  1115. // }
  1116. // async function getPageData14_data3() {
  1117. // const mkdata = await requestDataPromise('/web/getWebsiteModelArticles', {
  1118. // method: 'GET',
  1119. // query: {
  1120. // 'catid': pageData.value[13].cid,
  1121. // 'level': 1,
  1122. // 'pagesize': 5
  1123. // },
  1124. // });
  1125. // pageData.value[13].data3 = mkdata.data;
  1126. // }
  1127. //3.渲染页面数据 end ---------------------------------------->
  1128. //4.设置seo信息 start---------------------------------------->
  1129. //4.1 设置seo信息
  1130. const setData = await requestDataPromise('/web/getWebsiteCategoryHead', {
  1131. method: 'GET',
  1132. query: {
  1133. 'catid': routeId
  1134. },
  1135. });
  1136. if(setData.code == 200){
  1137. let seoTitle = setData.data.seo_title;
  1138. let seoDescription = setData.data.seo_description;
  1139. let seoKeywords = setData.data.seo_keywords;
  1140. let seoSuffix = setData.data.suffix;
  1141. let seoName = setData.data.website_name;
  1142. useSeoMeta({
  1143. title: seoTitle + "_" + seoSuffix,
  1144. meta: [
  1145. { name: 'description', content: seoDescription + "_" + seoName + "_" + seoSuffix , tagPriority: 10 },
  1146. { name: 'keywords', content: seoKeywords + "_" + seoName + "_" + seoSuffix , tagPriority: 10 }
  1147. ]
  1148. });
  1149. }else{
  1150. console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
  1151. console.log("错误位置:设置分类页面SEO数据")
  1152. console.log("后端错误反馈:",setData.message)
  1153. console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
  1154. }
  1155. //4.设置seo信息 end---------------------------------------->
  1156. </script>
  1157. <style lang="less" scoped>
  1158. @import '@/assets/css/class.less';
  1159. </style>